package com.uzai.console.service.ks;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.ks.kstoken.KsTokenIdDto;
import com.uzai.console.dto.ks.kstoken.KsTokenInfoDto;
import com.uzai.console.dto.ks.kstoken.KsTokenQuery;
import com.uzai.console.entity.KsToken;
import com.uzai.console.vo.ks.kstoken.KsTokenAuthUrlVo;
import com.uzai.console.vo.ks.kstoken.KsTokenInfoVo;

import java.util.List;

/**
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface KsTokenService {

   /**
     * 查询快手联盟列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param ksTokenQuery
     * @return null
     */
    Page<KsTokenInfoVo> findKsTokenList(KsTokenQuery ksTokenQuery);

   /**
     * 查询联盟详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param ksTokenIdDto
     * @return null
     */
    KsTokenInfoVo findKsTokenInfo(KsTokenIdDto ksTokenIdDto);

    /***
     * 添加快手账号
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param merId
     * @return null
     */
    KsTokenAuthUrlVo addKsToken(Long merId);

    /**
     * 修改快手账号
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param ksTokenInfoDto
     * @return null
     */
    void updateKsToken(KsTokenInfoDto ksTokenInfoDto);

    /**
     * 删除快手账号授权
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param ksTokenIdDto
     * @return null
     */
    void deleteKsToken(KsTokenIdDto ksTokenIdDto);

    /**
     * 查询所有快手联盟列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param ksTokenQuery
     * @return null
     */
    List<KsTokenInfoVo> findKsTokenListSelect(KsTokenQuery ksTokenQuery);

    /**
     * 刷新快手账号授权
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param ksToken
     * @return null
     */
    void refreshKsToken(KsToken ksToken);

    List<KsToken> listKsToken(Long merId, List<Long> ksAccountIds);
}
